The USB is an industry standardized bus architecture developed to provide efficient, cost effective connections of peripherals to gaming machine systems, consumer electronics, personal computers, and other electronic devices. USB is designed to efficiently integrate many various peripheral devices (e.g., up to 127 peripheral devices per USB port) to the gaming machine system. There are a wide variety of associated peripheral devices that can be connected to a gaming machine such as a slot machine or video poker machine. Some examples of these devices are lights, ticket printers, card readers, speakers, bill validators, ticket readers, coin acceptors, display panels, key pads, coin hoppers and button pads. Many of these devices are built into the gaming machine or components associated with the gaming machine such as a top box.
Typically, utilizing a master gaming controller, the gaming machine controls various combinations of devices that allow a player to play a game on the gaming machine and also encourage game play on the gaming machine. For example, a game played on a gaming machine usually requires a player to input money or indicia of credit into the gaming machine, indicate a wager amount, and initiate a game play. These steps require the gaming machine to control input devices, including bill validators and coin acceptors, to accept money into the gaming machine and recognize user inputs from devices, including key pads and button pads, to determine the wager amount and initiate game play. After game play has been initiated, the gaming machine determines a game outcome, presents the game outcome to the player and may dispense an award of some type depending on the outcome of the game. All of these functions may be performed via a USB.
USB differs from previous expansion bus systems. One difference is that USB connects peripheral devices to the gaming machine system without consuming the input output resources of the gaming machine system. Unlike previous expansion bus systems, peripheral devices designed to function with USB do not require memory or input output address space and do not require interrupt request lines from the gaming machine system. This increases the number of peripheral devices the gaming machine may reliably support. USB also provides a single connector type to connect peripheral devices designed to function with USB. Each peripheral device connects to a standard USB connector. Additionally, USB provides the ability to couple a number of peripheral devices to a single USB connector. USB also provides for automatic Peripheral device configuration and eliminates gaming machine system resource conflicts. These, and other, advantages allow USB to simplify and ease the process of adding peripheral devices to a gaming machine, providing a “plug and play” system.
Currently, a USB controller determines peripheral device states by periodically polling (i.e., querying) each peripheral device. Each connected peripheral device is polled in successive 1 ms intervals (e.g., frames). When a connected peripheral device requires service (e.g., a data transfer from an internal buffer to the master gaming controller), it waits until the next 1 ms interval, or frame, in which it is polled to communicate the required service to the USB controller or master gaming controller. In this manner, each connected peripheral device is polled in a round-robin manner to determine whether it requires service. It would be desirable to provide improvements over prior art methods.